package com.example.workshop.lesson11;

import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Component;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

@Component
public class RecommenderImplementation {

    private Filter filter;
    private Logger logger=
            LoggerFactory.getLogger(this.getClass());

    @Autowired
    public void setFilter(Filter filter) {

        logger.info("In RecommenderImplementation setter method..dependency injection");
        this.filter = filter;

    }

    public String [] recommendMovies(String movie){
         //过滤器来获取推荐
        String results[]= filter.getRecommendations("流浪地球");
        return results;

    }

    @PostConstruct
    public  void postConstruct(){

        //初始化代码放这里
      logger.info("In RecommenderImplementation postConstruct method");

    }
    @PreDestroy
    public  void preDestroy(){

        //用于清理代码
        logger.info("In RecommenderImplementation destroy method");

    }

}
